Zjisteni IP adresy

Otázka od: Petr Matejcek

28. 10. 2003 20:28

zdravim

 prosim poradte funkci ktera mi vrati moji aktualni IP adresu (adresa je
pridelovana z DHCP serveru v lokalni siti)

v archivu teto konference jsem nasel (nize) ale je tam psano ze se musim
pripojit k serveru a musim znat socket coz neznam  

function TSockets.GetIPAddr(aSocket: TSocket): string;
var
   addr: TSockAddrIn;
   addrlen: integer;
   szIPAddr: PChar;
begin
   addrlen := sizeof(addr);
   getsockname(aSocket,addr,addrlen);
   szIPAddr := inet_ntoa(addr.sin_addr);
   Result := StrPas(szIPAddr);
end;





----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)

Odpovedá: Robert Suska

28. 10. 2003 20:23

Ahoj

Do uses si nezabudni pridat unit WinSock.

function GetLocalIPAddress: String;
var
  p : PHostEnt;
  s : array[0..128] of Char;
  p2 : PChar;
  wVersionRequested : Word;
  wsaData : TWSAData;
begin
  wVersionRequested := MAKEWORD(1, 1);
  WSAStartup(wVersionRequested, wsaData);
  GetHostName(@s, 128);
  p := GetHostByName(@s);
  p2 := iNet_ntoa(PInAddr(p^.h_addr_list^)^);
  Result := p2;
  WSACleanup;
end;
 
Robo

-----Original Message-----
From: delphi-l-owner@clexpert.cz [mailto:delphi-l-owner@clexpert.cz] On
Behalf Of Petr Matejcek
Sent: Tuesday, October 28, 2003 8:05 PM
To: delphi-l@clexpert.cz
Subject: Zjisteni IP adresy

zdravim

 prosim poradte funkci ktera mi vrati moji aktualni IP adresu (adresa
je pridelovana z DHCP serveru v lokalni siti)

v archivu teto konference jsem nasel (nize) ale je tam psano ze se musim
pripojit k serveru a musim znat socket coz neznam  

function TSockets.GetIPAddr(aSocket: TSocket): string; var
   addr: TSockAddrIn;
   addrlen: integer;
   szIPAddr: PChar;
begin
   addrlen := sizeof(addr);
   getsockname(aSocket,addr,addrlen);
   szIPAddr := inet_ntoa(addr.sin_addr);
   Result := StrPas(szIPAddr);
end;








----------
* www.inMail.sk - Vasa emailova adresa na cely zivot ZDARMA
* Mail neobsahuje virusy. Zkontrolovane antivirusom NOD32 (www.eset.sk)
* www.SlovakNET.sk - profesionalny webhosting, domena .SK ZADARMO
* Zoner Media Explorer 5 - stiahnite si pomocnika pre digitalnu fotografiu
(zme.zoner.sk)